/**
 * @author Andre Lisson, Patrick Fiedler
 * @version Eclipse 3.6
 * @since 04.05.2011
 * letzte Aenderung: 04.07.2011
 * 
 * Beschreibung: Generiert neue Kundennummern nach dem Zufallsprinzip mit forgegebenem Format
 */

package kunde;

import java.util.Random;
import java.util.Vector;

public class KundenNummernVergeber {
// - - - Attribute - - -
	private String nummer = "";
	private static KundenNummernVergeber kv;
	private Vector<String> nummernListe = new Vector<String>();

// - - - Constructor - - -
	private KundenNummernVergeber() {
	}

// - - - Setter and Getter - - -
	public static KundenNummernVergeber getExample() {
		if (kv == null) {
			kv = new KundenNummernVergeber();
		}
		return kv;
	}

	public String getKundenNummer() {
		do {
			this.nummer = "";
			this.nummer += zufall(97, 122);
			this.nummer += zufall(48, 57);
			this.nummer += zufall(65, 90);
		} while (this.nummernListe.contains(this.nummer));
		this.nummernListe.add(this.nummer);
		return nummer;
	}

	private String zufall(int start, int ende) {
		String part = "";
		char zeichen = 0;
		Random random = new Random();
		for (int count = 0; count < 3; count++) {
			zeichen = (char) (random.nextInt(ende + 1 - start) + start);
			part += zeichen;
		}
		return part;
	}

// - - - sonstige Methoden - - -

}
